home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 76 / XENIATGM66.iso / Indiana Jones / Indiana Jones.exe / RESOURCE / PREVIEW.GOB / cog_cyn_sparkles.cog < prev    next >
Text File  |  1999-11-15  |  2KB  |  85 lines

  1. # Jones 3D Cog Script
  2. #
  3. # CYN_sparkles.cog
  4. #
  5. # Make sparkles...
  6. #
  7. # [CRM]
  8. #
  9. # (C) 1998 LucasArts Entertainment Company LLC. All Rights Reserved
  10. #
  11. # ===================================================================
  12.  
  13. symbols
  14.  
  15. message     timer
  16. message        sighted
  17. message        entered
  18.  
  19. material    mat=pyr_a4sfx_sparkle.mat    local
  20.  
  21. surface        trigger1
  22. surface        trigger2
  23.  
  24. sector        noflash1                    nolink
  25. sector        noflash2                    nolink
  26. sector        inSector                    local
  27.  
  28. thing        gem
  29. thing        sparkle                        nolink
  30.  
  31. int            sender                        local
  32. int            matTrack                    local
  33.  
  34. end
  35.  
  36. # ===================================================================
  37.  
  38. code
  39.  
  40. # -------------------------------------------------------------------
  41.  
  42. entered:
  43.  
  44.     sender = GetSenderRef();
  45.  
  46.     if ((sender != trigger1) && (sender != trigger2)) return;
  47.  
  48.     # Trigger faces will force sightings
  49.     ClearThingFlags(gem, 0x100000);
  50.     return;
  51.  
  52. # -------------------------------------------------------------------
  53.  
  54. sighted:
  55.  
  56.     if (GetSenderRef() != gem) return;
  57.  
  58.     # Prepare for next sighting
  59.     SetTimer(RandBetween(6, 15));
  60.  
  61.     # If player is too close to it, don't flash
  62.     inSector = GetThingSector(GetLocalPlayerThing());
  63.     if ((inSector == noflash1) || (inSector == noflash2)) return;
  64.     
  65.     # Animate sprite up and down
  66.     matTrack = MaterialAnim(mat, 20, 0x1);
  67.     AnimateSpriteSize(sparkle, '0.01 0.01 0.0', '0.5 0.5 1.0', 0.25);
  68.     Sleep(0.25);
  69.     AnimateSpriteSize(sparkle, '0.5 0.5 1.0', '0.01 0.01 0.0', 0.25);
  70.     Sleep(0.25);
  71.     StopAnim(matTrack);
  72.  
  73.     return;
  74.  
  75. # -------------------------------------------------------------------
  76.  
  77. timer:
  78.  
  79.     If (gem == -1) return;
  80.     # Set thing to unseen
  81.     ClearThingFlags(gem, 0x100000);
  82.     return;
  83.  
  84. end
  85.